package com.imooc.imoocbilibili.dto;

import lombok.Data;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.FutureOrPresent;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * @author 江黎
 * @since 2022-04-12
 */
@Data
public class VersionConfigDTO {

    /**
     * 端 1:android 2:ios 3:web
     */
    @NotNull(message = "端不能为空")
    @Range(min = 1, max = 3, message = "端无效")
    private Integer type;
    /**
     * 版本号
     */
    @NotBlank(message = "版本号不能为空")
    private String versionNumber;
    /**
     * 更新类型 1:非强制更新 2:强制更新
     */
    @Range(min = 1, max = 2, message = "更新类型无效")
    private Integer updateType;
    /**
     * 发布方式 1:立即发布 2:定时发布
     */
    @Range(min = 1, max = 2, message = "发布方式无效")
    private Integer pushType;
    /**
     * 发布时间
     */
    @FutureOrPresent(message = "发布时间不能晚于当前时间")
    private Date pushTime;
    /**
     * 版本描述
     */
    @NotBlank(message = "版本描述不能为空")
    private String description;
    /**
     * 包下载地址
     */
    @NotBlank(message = "包下载地址不能为空")
    private String url;

}
